//
//  drumsetController.h
//  rockband2garageband
//
//  Created by Sid Stamm on 7/25/09.
//  Copyright 2009 __MyCompanyName__. All rights reserved.
//

#import <Cocoa/Cocoa.h>

#import "Drumset.h"

@interface DrumsetController : NSObject {

    IBOutlet NSLevelIndicator *red_drum_value;
    IBOutlet NSTextField *red_drum_channel;
    IBOutlet NSStepper *red_drum_stepper;
    IBOutlet NSLevelIndicator *yellow_drum_value;
    IBOutlet NSTextField *yellow_drum_channel;
    IBOutlet NSStepper *yellow_drum_stepper;
    IBOutlet NSLevelIndicator *blue_drum_value;
    IBOutlet NSTextField *blue_drum_channel;
    IBOutlet NSStepper *blue_drum_stepper;
    IBOutlet NSLevelIndicator *green_drum_value;
    IBOutlet NSTextField *green_drum_channel;
    IBOutlet NSStepper *green_drum_stepper;
    IBOutlet NSLevelIndicator *pedal_drum_value;
    IBOutlet NSTextField *pedal_drum_channel;
    IBOutlet NSStepper *pedal_drum_stepper;
    
    IBOutlet NSLevelIndicator *connectedIndicator;
    IBOutlet NSProgressIndicator *connectedSpinner;
        
    IOHIDDeviceInterface** deviceInterface;
    Drumset *drumset;
}

- (IBAction) drumChannelChanged: (id) sender;
- (void) drumChannelChanged:(drum_index_t)index toValue:(int)val;


- (void)awakeFromNib;
- (void)notifyUSBDrumsetAdded;
- (void)notifyUSBDrumsetRemoved;
- (void)updateDrumdata;
- (void)changeMidiNotes;

@end
